/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Servlets;

import Conexion.GestionSQL;
import Negocio.Indicador;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Vector;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
 *
 * @author jorge.correa
 */
public class Indicadores extends HttpServlet {

    /**
     * Processes requests for both HTTP
     * <code>GET</code> and
     * <code>POST</code> methods.
     *
     * @param request servlet request
     * @param response servlet response
     * @throws ServletException if a servlet-specific error occurs
     * @throws IOException if an I/O error occurs
     */
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        try {
           
            String strAccion = request.getParameter("txtAccion");  
            String strEvento = request.getParameter("txtEvento");
            String strTitulo = "";
            String strCabecera = "";
            String strBusqueda = "";
            String strSQL = "";
            String strHTML = ""; 
             String strTablaAcciones = "";
            Indicador ind;
             
            strBusqueda = strBusqueda + "<form id='frmBusqueda' name='frmBusqueda' method='POST' action='#'>";
            strBusqueda = strBusqueda + "<table cellpadding='0' cellspacing='0' border='0' width='929px' class='TABLAFORM'>";
            strBusqueda = strBusqueda + "<tr>";
            strBusqueda = strBusqueda + "<td colspan='5' class ='TITULOBUSQUEDA'>";
            strBusqueda = strBusqueda + "FILTRO DE INFORMACIÓN";
            strBusqueda = strBusqueda + "</td>";
            strBusqueda = strBusqueda + "</tr>";
            strBusqueda = strBusqueda + "<tr>";
            strBusqueda = strBusqueda + "<td class ='LABELFORM' style='width: 200px;'>";
            strBusqueda = strBusqueda + "Fecha de inicio:<br />(aaaa-mm-dd)&nbsp;";
            strBusqueda = strBusqueda + "</td>";
            strBusqueda = strBusqueda + "<td class='CELDACAMPOFORM' style='width: 200px;'>";
            strBusqueda = strBusqueda + "<input type='text' name='txtFechaIni' id='txtFechaIni' class='CAMPOFORM' OnKeyPress='return disableKeyPress(event)' readOnly>&nbsp;<img src='Images/Calendario.JPG' class='IMGCALENDAR' id='imgFechaIni'>";
            strBusqueda = strBusqueda + "</td>";
            strBusqueda = strBusqueda + "<td class ='LABELFORM' style='width: 200px;'>";
            strBusqueda = strBusqueda + "Fecha de fin:<br />(aaaa-mm-dd)&nbsp;";
            strBusqueda = strBusqueda + "</td>";
            strBusqueda = strBusqueda + "<td class='CELDACAMPOFORM' style='width: 200px;'>";
            strBusqueda = strBusqueda + "<input type='text' name='txtFechaFin' id='txtFechaFin' class='CAMPOFORM' OnKeyPress='return disableKeyPress(event) readOnly'>&nbsp;<img src='Images/Calendario.JPG' class='IMGCALENDAR' id='imgFechaFin'>";
            strBusqueda = strBusqueda + "</td>";
            strBusqueda = strBusqueda + "<td class='CELDAIMAGEN'>";
            strBusqueda = strBusqueda + "<a href=\"#\" onclick=\"filtrarInfo('" + strAccion + "')\"><img src='Images/lupa.gif'id='Buscar' class='IMAGENBUSQUEDA'></a>";
            strBusqueda = strBusqueda + "</td>";
            strBusqueda = strBusqueda + "</tr>";
            strBusqueda = strBusqueda + "</table>"; 
            strBusqueda = strBusqueda + "<script language='javascript' type='text/javascript'>";
            strBusqueda = strBusqueda + "cargarCalendariosFiltros();";
             strBusqueda = strBusqueda + "</script>";
            strBusqueda = strBusqueda + "</form>"; 
                                       
            strTablaAcciones += "<table cellpadding='3' cellspacing='0' border='0' width='929px'>\n";
            strTablaAcciones += "<tr>\n";
            strTablaAcciones += "<td class='CELDAICONOREFRESH'>\n";
            strTablaAcciones += "<img src='Images/Refresh.png' class='ICONOREFRESH' onclick=\"AJAXC('POST','Indicadores','txtAccion=" + strAccion + "','dMostrar');\">\n";
            strTablaAcciones += "</td>\n";
            strTablaAcciones += "<td class='TEXTOREFRESH'>\n";
            strTablaAcciones += "<a href='#' onclick=\"AJAXC('POST','Indicadores','txtAccion=" + strAccion + "','dMostrar');\">Actualizar datos</a>\n";
            strTablaAcciones += "</td>\n";               
            strTablaAcciones += "</tr>\n";
            strTablaAcciones += "</table>\n";
            
            if (strAccion.equals("NumSolUsuario")){
                
                String strFechaIni = request.getParameter("txtFechaIni");
                String strFechaFin = request.getParameter("txtFechaFin");
                
                if((strFechaIni != null) && (strFechaFin != null)){
                    strTitulo = "NÚMERO DE SOLICITUDES POR TIPO DE USUARIO ENTRE " + strFechaIni + " Y " + strFechaFin;
                }else{
                    strTitulo = "NÚMERO DE SOLICITUDES POR TIPO DE USUARIO";
                }                
                
                strCabecera = "<td colspan='2' class='TITULOMENU'>" + strTitulo + "</td>";                                    
                strHTML = strHTML + "<td class='SUBTITULOMENU'>Tipo de usuario</td>\n";
                strHTML = strHTML + "<td class='SUBTITULOMENU'>Nro. de solicitudes</td>\n";             
                
                out.println("<html>");
                out.println("<head>");                
                out.println("</head>");
                out.println("<body OnKeyPress='return disableKeyPress(event)'>");
                out.println(strBusqueda);
                out.println("<div style='height:10px;'></div>");
                out.println(strTablaAcciones);    
                out.println("<div style='height:10px;'></div>");
                out.println("<table cellpadding='5' cellspacing='0' border='0' width='929px' class='TABLARESULT'>");
                out.println("<tr>");
                out.println(strCabecera);
                out.println("</tr>");
                out.println("<tr>");
                out.println(strHTML);
                out.println("</tr>");
                
                ind = new Indicador(strFechaIni, strFechaFin);
                Vector arrDatos = ind.numSolXTipoUsuario();
                
                 String[] strTemp = null;
                
                 for(int i=0;i<arrDatos.size();i++){
                    strTemp = arrDatos.get(i).toString().split(">");                      
                    out.println("<tr class='FILARESULT'>");                                                  
                    out.println("<td class='TEXTORESULT'>" + strTemp[0] + "</td>");
                    out.println("<td class='TEXTORESULT'>" + strTemp[1] + "</td>");                                   
                   }
            }
                        
            if (strAccion.equals("TopServicios")){
                String strFechaIni = request.getParameter("txtFechaIni");
                String strFechaFin = request.getParameter("txtFechaFin");
                
                if((strFechaIni != null) && (strFechaFin != null)){
                    strTitulo = "TOP DE SERVICIOS SOLICITADOS ENTRE " + strFechaIni + " Y " + strFechaFin;
                }else{
                    strTitulo = "TOP DE SERVICIOS SOLICITADOS";
                }                
                
                strCabecera = "<td colspan='2' class='TITULOMENU'>" + strTitulo + "</td>";                                    
                strHTML = strHTML + "<td class='SUBTITULOMENU'>Nombre del servicio</td>\n";
                strHTML = strHTML + "<td class='SUBTITULOMENU'>Nro. de solicitudes</td>\n";             
                
                out.println("<html>");
                out.println("<head>");                
                out.println("</head>");
                out.println("<body OnKeyPress='return disableKeyPress(event)'>");
                out.println(strBusqueda);
                out.println("<div style='height:10px;'></div>");
                out.println(strTablaAcciones);    
                out.println("<div style='height:10px;'></div>");
                out.println("<table cellpadding='5' cellspacing='0' border='0' width='929px' class='TABLARESULT'>");
                out.println("<tr>");
                out.println(strCabecera);
                out.println("</tr>");
                out.println("<tr>");
                out.println(strHTML);
                out.println("</tr>");
                
                ind = new Indicador(strFechaIni, strFechaFin);
                Vector arrDatos = ind.TopServiciosSol();
                
                 String[] strTemp = null;
                
                 for(int i=0;i<arrDatos.size();i++){
                    strTemp = arrDatos.get(i).toString().split(">");                      
                    out.println("<tr class='FILARESULT'>");                                                  
                    out.println("<td class='TEXTORESULT'>" + strTemp[0] + "</td>");
                    out.println("<td class='TEXTORESULT'>" + strTemp[1] + "</td>");                                   
                   }
            }                                         
                
        } finally {            
            out.close();
        }
    }

    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
    /**
     * Handles the HTTP
     * <code>GET</code> method.
     *
     * @param request servlet request
     * @param response servlet response
     * @throws ServletException if a servlet-specific error occurs
     * @throws IOException if an I/O error occurs
     */
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }

    /**
     * Handles the HTTP
     * <code>POST</code> method.
     *
     * @param request servlet request
     * @param response servlet response
     * @throws ServletException if a servlet-specific error occurs
     * @throws IOException if an I/O error occurs
     */
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        processRequest(request, response);
    }

    /**
     * Returns a short description of the servlet.
     *
     * @return a String containing servlet description
     */
    @Override
    public String getServletInfo() {
        return "Short description";
    }// </editor-fold>
}
